专利摘要:
management of a location database for network-based positioning system. the present invention relates to methods, program products and systems for managing a location database are described. a server can receive location information from mobile devices aware of the location (for example, gps-enabled devices) located within a communication range of access points on a wireless communications network. the server can calculate the average geographic locations using the locations received for each access point. based on the average geographic locations, the server can assign access points to cells in a geographic grid. the server can filter the access points in each cell based on popularity, stability, longevity, and freshness of the access points and data received. when a second mobile device connects to an access point in a cell, the location of the second mobile device can be determined based on the locations of access points in the cell and neighboring cells.
公开号:BR112012017530B1
申请号:R112012017530-0
申请日:2010-08-25
公开日:2021-04-13
发明作者:Ronald K. Huang;Markus Fischer;Seejo Pylappan
申请人:Apple Inc;
IPC主号:
专利说明:

Technical Field
The present invention generally relates to the determination of a geographical location for a mobile device. Background
A wireless communications network can employ several technologies for devices to communicate wirelessly. For example, a wireless local area network (WLAN) can include a local area network (for example, a computer network covering a relatively small physical area, such as a home, an office, or a small group of buildings such as a school) that uses radio waves instead of wires for communication between the nodes (for example, devices) of the network. Some examples of WLAN technology include WiFi, which can include any WLAN product that is based on any IEEE 802.11 standard.
The wireless connection between a sender and a recipient can employ radio frequency (RF) technology, a frequency within the electromagnetic spectrum associated with the propagation of radio waves. Some illustrative radio frequencies used in WiFi are 2.5 Gi-gahertz (GHz) or 5 GHz. When an RF current is supplied to an antenna, an electromagnetic field can be created. The electromagnetic field can propagate through space. A component of a wireless communications network can be an access point (AP). The access point can allow a wireless mobile device to communicate with a wired network. One function of the access point may be to broadcast a wireless signal that computers equipped with wireless adapters or wireless mobile devices can detect and which they can "tune in" to.
A WiFi network access point can cover a geographic area determined by the intensity of the signals sent from and received by the access point and the physical characteristics of the geographic area. A variable number of mobile devices can be located within a communication range of the access point. A mobile device can be within the communication range of multiple access points at the same time. A mobile device can sometimes determine its location using the locations of the access points to which the mobile device can communicate, by triangulating its location based on the strength of the signals received from the access points, if the locations of the access points are known. summary
Methods, program products and systems for managing a location database of the network-based positioning system are described. A server computer can receive location information from location-aware mobile devices (for example, devices with GPS) located within a communication range of access points on a wireless communications network. The server computer can calculate the average geographic locations using the locations received for each access point. Based on the average geographic locations, the server computer can designate the access points to the cells in a geographic grid. The server computer can filter the access points in each cell based on popularity, stability, longevity, and freshness of the access point and the data received. The server computer can store access point identifiers in association with average geographic locations in a location database.
A mobile device can determine your location using locations of access points to which the mobile device can connect. The mobile device, by connecting to an access point in a cell in a geographic grid, can request and receive location information from the access point, locations of other access points in the cell, and locations of access points in cells neighboring the cell. cell. The mobile device can identify the locations of the received information that are associated with the access points within a communication range of the mobile device. The mobile device can calculate an average geographic location using the identified locations. The mobile device can additionally calculate a distance between each location and the calculated average. The mobile device can exclude locations that are far enough from the average. The mobile device can repeat the calculation and exclusion until a level of accuracy is reached for the average geographic location. The mobile device can display the information on a map monitor of the mobile device.
Techniques for managing a database for locating the network-based positioning system can be implemented to achieve the following illustrative advantages. A geographical area can be associated with a wireless communication network access point when the actual location of the access point is unknown. The geographic area may correspond to an area in which an actual mobile device that is located within a range of communication from the access point must be located, instead of the actual location of the access point. The geographic area can be estimated based on real-time data from mobile devices, which can be updated frequently, and therefore can provide updated location information. If an access point has moved away or is disconnected, the access point can be removed from the database to avoid determining an invalid location. The geographic area can be calculated based on the data received from mobile devices at various times of the day, therefore, the geographic area can correspond to various usage patterns, for example, for travel time, business hours, or night.
Access points associated with the geographic area can be used to determine a location for a non-GPS enabled mobile device that is located within a communication range of the access point. Data transmission between the access point and the mobile device can occur at a time when the mobile device is inactive, in order to avoid interference with normal communication between the mobile device and the access point. A system for determining the location of mobile devices using locations of access points can automatically limit your consumption of bandwidth from mobile devices, since the system can transmit the locations of access points that are directly within the communication range. mobile devices as well as access point locations in neighboring areas. As such, frequent updates and retransmissions are unnecessary even when mobile devices are moving. The filtering mechanisms of the access points in each cell can further limit the amount of data transmitted to the mobile device in each transmission. A mobile device can estimate its location more precisely than, for example, using the signal strength to estimate the location, since the signal strength can vary due to various interferences. Mobile devices with GPS can take advantage of the locations of wireless access points when, for example, GPS signals are weak (for example, inside buildings).
Details of one or more implementations of managing a location database of the network-based positioning system are presented in the attached drawings and in the description below. Other features, aspects and advantages of managing a location database will be apparent from the description, drawings and claims.
Brief Description of the Drawings Figure 1a is an overview of the techniques for managing a location database; Figure 1b illustrates techniques for managing a location database in a three-dimensional space; Figures 2a to 2c illustrate illustrative stages of determining locations associated with access points in WLAN using mobile devices; Figure 2d illustrates an illustrative stage of determining locations associated with access points in WLAN using mobile devices in a three-dimensional space; Figures 3a and 3b are flowcharts illustrating illustrative processes for determining locations associated with WLAN access points using mobile devices; Figure 3c is a block diagram illustrating an illustrative system implementing the techniques for managing a location database; Figure 4a illustrates techniques for determining the locations of mobile devices using a location database in the network-based positioning system; Figure 4b is a flow chart illustrating an illustrative process for determining a location of a mobile device using a location database; Figure 4c is a flow chart illustrating an adaptive multi-pass process illustrating a location of a mobile device; Figure 5 illustrates an illustrative user interface for determining the locations of mobile devices using location of wireless access points; Figure 6 is a block diagram of an illustrative system architecture to implement the features and operations described with reference to figures 1 to 5; Figure 7 is a block diagram of an illustrative architecture of a mobile device. Similar reference symbols in the various drawings indicate similar elements. Detailed Description
Overview of Managing a Location Database
Figure 1a is an overview of the techniques for managing a location database for the network-based position system. A WLAN can be a radio communications network that includes a number of access points 105. Access points 105 can include a computer hardware or software device that can act as a communication hub for wireless devices to connect to a wired network. Multiple access points 105 can be distributed in an area (for example, a commercial building or an airport).
Access point 105 can communicate with wireless devices (for example, mobile devices 108 and 110) using various communication protocols. In some implementations, access point 105 may be an access point of a WiFi ™ network, which implements a protocol based on IEEE 802.11 (for example, IEEE 802.11a). In some implementations, access point 105 can be a worldwide interoperability access point for microwave access network (WiMAX) that implements a protocol based on IEEE 802.16 (for example, IEEE 802.16-2004 or IEEE 802.16e-2005). Access point 105 can have a communication strip that can reach from the location of access point 105 to anywhere within ten meters to several hundred meters, depending on factors including access point 105 configuration and physical surroundings . Multiple wireless devices 108 and 110 can connect to an access point when mobile devices 108 and 110 are within the communication range of access point 105. In turn, access points 105 may be available for a single mobile device 108 or 110 for connection. Mobile devices 108 and 110 can select a particular access point 105 to which mobile devices 108 and 110 can connect based on several factors. For example, the selection may be based on whether or not the mobile device 108 is authorized to connect to the access point 104a, or whether the access point 105a can provide the strongest signal for the wireless connection to the mobile devices 108.
The system can determine the location areas 115 that are associated with access points 105. Location areas 115 can be calculated so that they indicate where mobile devices 108 located within a communication range of access points 105 should be located. The system can perform the determination based on known locations from mobile devices 108 that are located within a communication range of access points 105. Mobile devices 108 can be location aware mobile devices, for example, devices GPS-activated mobile devices that have built-in, or coupled with, receivers that can receive GPS signals and determine locations using GPS signals. Location aware mobile devices 108 are represented as black triangles in Figure 1a. When location aware mobile devices 108 are located within a communication range of a particular access point 105 (for example, access point 105a), location aware mobile devices 108 can transmit device locations to the access point 105a. Access point 105a can relay the transmission in addition to an access point identifier 105a, to the system. The system can determine an estimated location area 115a where any mobile device 108 or 110 located within a communication range of access point 105a must be located. In this specification, the estimated location areas 115 will be referred to as presence areas, to indicate that the mobile device 108 or 110, when located within a communication range of a particular access point 105, must be present.
To calculate the presence areas 115, the system can apply an interactive process (for example, by performing a multiple-pass analysis). The interactive process can determine a presence area (e.g., presence area 115) that is associated with an access point (e.g., access point 105) as a circle. The circle may have a center that corresponds to an average geographic location calculated based on the locations of mobile devices aware of location 108 that are located within a communication range of access point 105. The circle may have a radius that corresponds to a margin of error, which can be determined, for example, by a distance between a location of a mobile device 108 and an average geographic location. Additional details of the interactive process will be described below with reference to figures 2 and 3. The interactive process can be performed periodically (for example, every six hours) to capture different wireless usage patterns during different hours of a day. in addition to capturing potential movement from access points 105.
The system can send information from the presence areas 115 to the mobile devices, including mobile devices not activated by GPS (for example, mobile device 110), which are located within a communication range of access points 105 so that the device receiving device can determine the estimated locations of the devices using presence areas 115. For example, if the mobile device 110 is located within an access point communication range 105b, the location of the mobile device 110 can be estimated so that match presence area 115b that is associated with access point 105b.
In a given area (for example, an airport), numerous access points 105 may exist. Additionally, a mobile device 110 may be mobile, it may be logical to send locations of access points that are not immediately within a communication range of the mobile device 110, but are close enough to the mobile device 110, so that the device mobile 110 can use the locations to track its movement. To avoid sending a large amount of location data to the mobile device 110, the system can filter access points 104 and location areas 115 so that only location data from a limited number of access points ( for example, access point 105a), instead of location data for each access point that exists in the world, be transmitted. Filtering can be based on several factors, including popularity, stability, longevity, and freshness of locations 115 and access points 104.
To filter locations 115 and access points 105, the system can create a geographic grid 100 that contains cells 102. Cell 102 can be a polygon having a substantially rectangular shape, the polygon corresponding to an identifiable geographic area in the geographic grid 100 for a latitude and longitude of a geographic area identification point (for example, a center or a corner), and a size (for example, a length measured in degrees of longitude, and a width measured in degrees of latitude) . Each cell 102 can be used as a container that can contain a number of locations. For example, cell 102 may be a rectangle whose length equals 0.0005 degrees meridians (approximately 56 meters) and whose width is 0.0005 degrees latitude (width in meters may vary depending on latitude). Cell 102 may be configured to maintain a number (for example, three) of presence areas 115 corresponding to access points 105. In some implementations, cell 102 may "maintain" presence area 115 if the center of the presence 115 is located within the limits of cell 102. Presence areas 115 can be selected from all presence areas 115 that are located in cell 102 based on one or more reliability factors. The selection can be based on several criteria such as popularity, stability, longevity and freshness.
A particular access point (for example, access point 105b) and the presence area associated with the access point (for example, presence area 115b) do not need to be located in the same cell 102. This can happen, for example , when access point 105b is located in a building in cell 102a and most mobile devices 108 located within a communication range of access point 105b is located in another building in cell 102b. In some implementations, the system may ignore the actual location of access point 105b.
When the mobile device 110 connects to an access point (for example, access point 105a, whose associated presence area 115a is located in cell 102c), or connected to the system in other ways (for example, via a cellular network ), mobile device 110 can receive a system location update. The location update can include all presence areas 115 that are located in the same cell where presence area 115 is located (for example, cell 102c). The location update may additionally include areas of presence 115 that are located in other cells 102 (for example, cell 102a and cell 102b) that are neighbors of cell 102c in geographic grid 100.
When the mobile device 110 connects the access point 105a, the mobile device 110 can detect other access points 105 (for example, the access point 105b) that are available. The mobile device 110 can identify the presence areas (for example, the presence areas 115a and 115b) for the available access points. The mobile device 110 can calculate a current location of the mobile device 110 using various algorithms. For example, when only a presence area 115a is identified, mobile device 110 can designate presence area 115a as the current location of mobile device 110. When two or more presence areas 115 are identified, mobile device 110 can calculate your current location using an interactive process (for example, a multi-pass analysis). The interactive process can calculate an average location of the presence areas, calculate the distances between the presence areas and the average location, and exclude the presence areas that are furthest from the average location. The mobile device 110 can repeat the interactions until an accuracy requirement is met to determine a location of the mobile device 110. The mobile device 110 can designate the average location as a current location of the mobile device 110 and display the average location on a map display device.
In some implementations, the location update received on the mobile device 110 from the system may include numerous neighboring cells so that a sufficiently large area (for example, one or more square kilometers) around the presence area 115a can be covered . Based on the location update covering the large area, the mobile device 110 can avoid having to request frequent updates when the mobile device 110 moves. The mobile device 110 may have opportunities to receive updated presence area information when, for example, the mobile device 110 is inactive or otherwise has an available communication bandwidth.
Figure 1b illustrates the management of a location database in a three-dimensional space. Some location-aware mobile devices 108 (for example, GPS-enabled devices) can identify locations in a three-dimensional space. Locations can be represented by latitudes, longitudes and altitudes. Altitudes can be expressed, for example, as elevation measured in meters from sea level. The location of a mobile device in a three-dimensional space may be desirable when an altitude of the mobile device is required to locate the mobile device. For example, altitude can be used to determine which floor the mobile device is located in a tall building. The location of the mobile device 108 in a three-dimensional space can be displayed on a two-dimensional map with the elevation as an annotation on a three-dimensional map.
Mobile devices 108 can connect to access point 126. Mobile devices 108 can be location aware mobile devices that can transmit their locations, including latitude, longitude and altitude coordinates to the system. The system can calculate an average location based on the latitude, longitude and altitude coordinates received from the mobile devices 108. The three-dimensional space 124, having the average location as a center and a margin of error as a radius, can be associated with the point access point 126. Space 124 may represent a space in which a mobile device can be located when the mobile device is located within a communication range of access point 126. In this specification, space 124 will be referred to as a presence space .
The system can send information about the presence space 124 to the mobile devices that are located within a communication range of the access point 126. The mobile devices receiving the information can use the information to determine their geographic locations. The system can divide a three-dimensional geographic space into three-dimensional grids 120. Three-dimensional grid 120 may consist of three-dimensional cells 122. Each three-dimensional cell 122 may have a base that corresponds to cell 102 of geographic grid 100. Each three-dimensional cell 122 may have a height (for example, measured in meters) as a dimension. Presence space 124 can be referred to as a state located in cell 122 if the center of presence space 124 is in cell 122. The system can limit the number of presence spaces in cell 122 based on the popularity of the presence space ( for example, how many connections are created from mobile devices 108 in the presence space to the access point 126), a stability of the presence space 124 (for example, how stable has the presence space 124 been), a longevity of access point 126 (for example, how long access point 126 has been in existence), and a freshness of presence space 124 (for example, when it was the last location transmission from mobile device 108 located within a range of access point communication 126).
The system can transmit information about presence space 124 and neighboring presence spaces based on three-dimensional cells 122 of three-dimensional grid 120 to a mobile device (for example, a mobile device 110) that is located within a communication band of the point access 126. The mobile device 110 can use the information to estimate a current location of the mobile device 110 in three-dimensional space, and display the current estimated location on a three-dimensional map.
Illustrative Server Side Process and System for Managing a Location Database
Figures 2a to 2c illustrate illustrative stages of managing a location database. For convenience, the techniques will be described with reference to a network-based positioning system that includes a server that implements the techniques.
Figure 2a illustrates an illustrative stage of a multi-pass analysis that can be used to determine an area of presence associated with access point 105. Access point 105 can have a coverage area 202, which can be determined by a signal strength from an access point transmitter 105 and other factors (e.g., physical characteristics of the geographic area surrounding the access point 105). Mobile devices 108 that are located within coverage area 202 can wirelessly connect access point 105. Access point 105 can allow mobile devices 108 to connect a wired network through multiple access circuits. The wired network may include a data network (for example, the Internet), a public exchanged telephone network (PSTN), other digital or analog networks, or a combination of the above.
Mobile device 108 may include location aware mobile devices (e.g., GPS enabled mobile devices). Each mobile device aware of location 108 (represented as a black triangle in figure 2a) can detect its current geographic location. The current geographic location can be represented by geographic coordinates that include a latitude and longitude of the mobile device 108. When mobile devices 108 communicate with access point 105, mobile devices 108 can transmit location information to the system via the access point 105. Location information can be associated with an access point identifier 105 (for example, a Media Access Control (MAC) address of access point 105). The system can use the location information received from multiple mobile devices 108 to determine the presence area that can be associated with the access point 105. The presence area does not necessarily contain a location in which the access point 100 is located. really located. Nor is it necessary that the presence area corresponds to the geometrical location or shape of the coverage area 202, although the presence area can be located within the coverage area 202.
The distribution of mobile devices 108 with coverage area 202 can correspond to a photo of mobile devices 108 at a particular time (for example, 8:30 am local time, for a time zone in which access point 105 is located). Each mobile device 108 can be associated with a single location. The distribution of mobile devices 108 with coverage area 202 can also correspond to the locations of mobile devices 108 over a period of time (e.g., six hours from 4 am to 10 am). Each mobile device 108 can be associated with multiple locations (for example, when mobile device 108 is moving). A single mobile device 108 that is associated with multiple locations can be represented by multiple locations in the system, as illustrated by multiple triangles in figure 2a.
The server can determine an average geographic location of a set of locations received from mobile devices 108. The set of locations can include locations received from mobile devices 108 at a particular time or for a particular period of time. The average geographical location can be designated as the center 205 of the area encompassed by circle 204a. The center of circle 204a need not coincide with the location of access point 105. The server can calculate a distance between the average geographic location and each location in the set and identify one or more outliers. Outliers can be locations in the set that are located furthest from the average geographic location. Outliers (for example, location 210) whose distances from the center exceed a limit can be excluded from the set. Circle 204a can have a radius 206 that corresponds to the longest distance between the average geographic location and the locations in a current set after outliers are excluded.
Figure 2b illustrates an illustrative stage of multi-pass analysis subsequent to the stage of figure 2a. Locations whose distances to the average geographical location of figure 2a (center 205 of circle 204a) exceed a limit have been excluded from the set. The limit can be configured so that a percentage of positions (for example, 5% of the locations in figure 2a) are excluded. A new average geographic location can be calculated based on the rest of the locations in the set (for example, 95% of the remaining locations). The new average geographic location can be, for example, a center 225 of circle 204b. In several implementations, calculating the new average geographic location may include averaging the remaining locations in the set, selecting an average geographic location in the set (for example, by selecting an average latitude or an average longitude), or application other algorithms. The algorithms for calculating the average geographic location can be identical for each pass in the multi-pass analysis, or can be distinguished from each other for each pass.
The area encompassed by circle 204b may be smaller than the area encompassed by circle 204a as determined in a previous pass when outlier locations are excluded. The smaller area may reflect increased calculation accuracy. The center 225 of circle 204b does not necessarily have to coincide with the center 205 of circle 204a. In some implementations, the radius 216 of the circle 204b may correspond to a remaining location of the mobile device 108 that is furthest from the center 225 of the circle 204b. Radius 216 may represent a margin of error for the new estimate of the area of presence calculated on the current ticket.
Figure 2c illustrates a final stage illustrating the analysis of multiple passages. When certain exit conditions are met, the system can end the interactive process after the final stage. The final stage can produce a final average geographical location that corresponds to a grouping of mobile device positions 108. The final average geographical location can be presented as a center 235 of circle 204c. Circle 204c may have a radius that corresponds to a final margin of error, which is based on a distance between the final average geographic location and a location in the cluster. The circle 204c can be designated as the presence area associated with the access point 105 through the identifier (for example, a MAC address) of the access point 105.
The server can determine whether to include access point identifier 105 and associated presence area in a location database based on several factors. For example, the server can count the number of presence areas in cell 102 of geographic grid 100, and select a number of presence areas based on popularity, stability and longevity. The server can send information from the presence areas (including presence area 204c if presence area 204c is selected) in the location database to a mobile device (for example, mobile device 215), regardless of whether the device 215 is activated by GPS.
Figure 2d illustrates an illustrative stage of managing a location database in a three-dimensional space. In figure 2d, the geometric axes X, Y and Z can be used to indicate the three-dimensional space. For example, the X, Y and Z axes can represent longitude, latitude and altitude, respectively. For convenience, the location of access point 126 is illustrated to coincide with the zero point on the geometric axes X, Y and Z in figure 2d. In some implementations, an actual location (for example, latitude, longitude and altitude coordinates) of access point 126 is optional in the calculations.
Each triangle in figure 2d can represent a location for a mobile device located in three-dimensional space. Locations can have projections (for example, projection 226) on a plane in three-dimensional space. The plane can be defined at arbitrary altitude (for example, the altitude of access point 126). For example, the plane can be defined by geometry axes X and Y. Access point 126 can correspond to a coverage space 222, which can be determined by the signal strength of access point 126 and other limiting factors (for example, floors, ceilings, buildings in the signal path).
A multi-pass analysis can associate a geographic space with WLAN-based access point 126 in a set of locations received from location aware mobile devices 108 that are located in cell space 202. In a multi-pass analysis pass, an average geographic location (eg, center of space 224) can be determined, for example, by averaging the latitude, longitude and altitude coordinates of the locations in the set. Distances between the average geographic location and the locations in coverage space 222 can be calculated. Locations that are within coverage space 222, but are sufficiently distant from the average geographic location, can be excluded from the pool and from additional computations. A radius of space 224 can be determined, for example, by the longest distance between the remaining locations in the set and the average geographic location.
The system can repeat the stages of calculating an average geographic location in a set, calculating the distances between the average geographic location and the locations in the set, and excluding locations from the set based on the calculated distances. The repetition can continue until an exit condition is satisfied. A space having a center in the average geographical location and a radius that is based on a distance between the average geographical location and a remaining location in the set can be designated as a presence space that can be associated with access point 126.
Figure 3a is a flow chart illustrating the illustrative process 300 of managing a location database. Processes 300 can be used, for example, to determine a presence area or presence space associated with a WLAN access point. The presence area or presence space can be used to determine a location for a non-GPS enabled mobile device. For convenience, process 300 will be described with reference to a system that implements process 300.
The system can receive (302) a set of locations from one or more first mobile devices 108 located within a communication range of the access point 105. Each location can be represented by a set of geographical coordinates (for example, a latitude, longitude and altitude). The location can be associated with an identifier (for example, a MAC address) of access point 105. The access point identifier can be automatically supplied by access point 105 when access point 105 communicates with the system. In several implementations, the set of locations can correspond to a period of time (for example, 6 hours, or from 6 am to 10 am in a time zone in which access point 105 is located).
In some implementations, the time period can be configured to reflect the characteristics of specific usage patterns at various times of the day. An area in which mobile devices located within a communication range of access point 105 are most likely to be located can vary during the day, indicating various usage patterns at specific times. For example, the time period can correspond to a "travel time", "business hours", "night time", etc. The characteristics of the time of day can correspond to various usage patterns of mobile devices 108. For example, during travel time, the area of presence associated with access point 105 may be on or near an expressway; during business hours, the area of presence associated with access point 105 may be in or near a commercial building; during the night, the area of presence associated with access point 105 can spread without a particular concentration point. The system can calculate the area of presence based on the locations received, for example, from 4 am to 10 am, and recalculate the area of presence based on the location received from 10 am to 4 pm, etc. The locations received in each characteristic time period can be grouped together in the system. The locations can be stored in any data structure (for example, set, list, data records in a relational database, etc.) on a storage device attached to the server.
The system can determine (304) a geographic location associated with access point 105 based on an average of the received set of locations. The geographical location can include a presence area or a presence space as described above. The presence area or presence space can be associated with the access point 105, for example, by the MAC address of the access point 105. In some implementations, the geographic location determination may include the application of a multiple algorithm tickets in the set of locations received, including excluding at least one location from the set in each ticket. The determination of the geographic location may include the application of a multipass algorithm periodically.
The system can designate (306) access point 105 in the geographic location associated with access point 105 for a cell (for example, cell 102) in a geographic grid (for example, geographic grid 100) based on multiple factors including the popularity of access point 105, stability of geographic location, and longevity of access point 105. In some implementations, the popularity of access point 105 can measure how many mobile devices 108 are located within a communication range of the point access point 105. The popularity of the access point can be measured, for example, by how many locations of the mobile devices 107 that have been located within a communication range of the access point 105 are received in a period of time by the system.
The stability of the presence area associated with the access point 105 may reflect how reliable the presence area is, if the presence area is used to estimate a device location located within an access point 105 communication range. The stability of the area of presence associated with access point 105 can be measured, for example, by comparing the areas of presence calculated by the last two calculations, and determining a degree of overlap between the areas of presence. The greater the degree of overlap, the more stable the area of presence.
The longevity of access point 105 may reflect on the quality of the data associated with access point 105. For example, an access point that has been observed in the database for a longer time may be more reliable than an access point that was recently added. The longevity of the access point 105 can be measured by a historical data in a location database.
In some implementations, a freshness of the data can also be used to determine whether the area of presence associated with access point 105 will be assigned to cell 102 of geographic grid 100. The freshness of the data can be measured by how long ago the system received the most recent location of the mobile device 108.
The system can classify each area of presence located in cell 102 of geographic grid 100 based on popularity, stability, longevity and freshness. At least a portion of all presence areas located in cell 102 (for example, three presence areas, including the presence area that is associated with access point 105) can be assigned to cell 102. Access points designated areas and presence areas can be used to locate mobile devices (for example, mobile devices 110) that are located within a communication range of access point 105. Unassigned areas of presence can be stored in the base location data for future use.
The system can provide (308) the geographic location associated with the access point 105 to a second mobile device (for example, the mobile device 110) which is located within a communication range of the access point 105. The system it can additionally provide other geographic locations located in the same cell, in addition to geographic locations associated with access points designated for neighboring cells for the second mobile device. Locations can be transmitted from access point 105 to the second mobile device upon request or using various broadcast technologies.
In some implementations, the system can receive, process and transmit three-dimensional location information. Presence spaces (for example, presence space 124) can be assigned to three-dimensional cells (for example, three-dimensional cell 122) in a geographic three-dimensional grid (for example, three-dimensional grid 120). The locations can be transmitted from access point 126 to a second mobile device that is located within a communication band of access point 126 upon request or using various broadcast technologies.
Figure 3b is a flow chart illustrating an illustrative process 204 for calculating an average geographic location using a set of locations. For convenience, process 304 will be described with reference to a system that implements process 304.
The system can calculate (324) an average geographic location using the locations in the set. The calculation of the average geographic location can include the calculation of an average of latitudes, longitudes and altitudes of the locations in the set, and the designation of a position in the average latitude, longitude and altitude calculated as the average geographic location. In some implementations, the calculation of the average geographical location may include the designation of a position at an average latitude, average longitude and average altitude of the positions in the set as the average geographic location.
The system can calculate (326) the distances between the locations in the set and the average geographic location. In some implementations, the system can calculate a linear distance between each of the locations in the set and the average geographic location in the Euclidean space. In some implementations, the system can calculate a geodetic distance between each of the locations in the set and the average geographic location, taking into account the curvature of the earth.
The distances calculated at stage 326 can be projected as a radius associated with a center. The center can be the average geographic location calculated at stage 324, which can be a center of a circle (for example, circle 204a). The radius of the circle can be determined based on at least one distance between a location in the set of locations and the average geographic location. In some implementations, the radius can be equal to the largest distance between the average geographic location and a remaining location in the set. In some implementations, the radius can be a distance that, when circle 106d is drawn using the radius and the average geographic location as a center, the circle can enclose a percentage (for example, 80%) of the remaining locations as a whole. The radius can represent a margin of error beyond which an estimate of a location on a non-GPS-enabled mobile device is less likely to be statistically significant.
The system can exclude (328) from the set at least one location based on a distance between the average location and the location. In some implementations, the system may exclude locations whose distance to the average geographic location exceeds a limit distance. With each pass in the multi-pass analysis, the system can increase the accuracy of the average geographic location estimated by excluding locations that appear to be distant from a concentration of locations (for example, a cluster). A location that is distant from a grouping of locations may be less useful in estimating the area of presence associated with access point 105 and can be excluded. In many implementations, the limit distance can vary from one pass to the next pass. In some implementations, the limit distance can be a distance to the average geographic location within which a given percentage (for example, 95%) of the locations in the set are located. In some implementations, the limit distance can be a set of distances corresponding to the passages (for example, 250 meters for the first pass, 150 meters for the second pass, etc.). The system can exclude at least one location from the set when the distance between the average geographic location and the location exceeds the limit distance.
The system can repeat stages 324, 326 and 328 of process 304 until an exit condition is satisfied. The system can determine (330) whether an exit condition is satisfied to end the repetition. In some implementations, the exit condition can be satisfied when a number of repetitions reaches a limit number (for example, 10 times). The limit number, in addition to the percentage of locations to be excluded, can be configurable to tune in a balance between certainty (for example, a larger area of presence can result in more confidence that a mobile device in the cell is actually located in the area presence) and accuracy (for example, a smaller presence area can result in a more accurate location for a mobile device). For example, when the percentage is set to 95% and the number of passes is set to 10, the final pass can produce a circle that encompasses about 60% of all location data points.
In some implementations, the exit condition of stage 330 can be satisfied when the presence area or presence space is sufficiently small. In cells in which mobile devices are highly concentrated, an area of presence may be small enough that additional passages will not necessarily increase accuracy. The repetition of stages 324, 326, and 328 can end when the radius of the circle reaches below a limit radius. For example, the limit radius can be 8 to 10 meters. The boundary radius may differ from access point to access point, based on the distribution pattern of the locations in the received set (for example, number of location data points received, density of the location data points, and areas of concentration in the cells).
The system can designate (332) the geographical area as a circle having the average geographical location as a center and radius based on at least one calculated distance. The geographical area can be associated with an access point (for example, access point 105). The server can provide the geographic area (for example, the center and the radius) for a mobile device to calculate a current location on the mobile device. The center can be represented in latitudes and longitudes. In some implementations where distances are calculated in three-dimensional spaces, the center can be additionally represented at an altitude.
Figure 3c is a block diagram illustrating an illustrative system implementing techniques for managing a location database. The system can include one or more processors, one or more memory devices storing instructions, and other hardware or software components. The system can include the location engine 350 which can be used to determine a presence area or presence space to be associated with an access point (for example, access point 105).
Location engine 350 can include data collection module 352 which can receive data from multiple mobile devices via multiple access points. The data can include multiple data points that can indicate the locations of one or more mobile devices aware of location (for example, mobile devices 108) in addition to access point identifiers (for example, MAC addresses of access points 105) indicating which access point the mobile devices 108 are connected to. In some implementations, data points may also include information on what time zone mobile devices 108 are located. The data collection module 352 can include the data receiving module 354, which can receive data transmitted from mobile devices 108 and the data indexing module 356. The data indexing module 356 can perform various processing at the received data. For example, the 356 data indexing module can classify latitudes, longitudes, and altitudes based on cell IDs. The 356 data indexing module can also group data into sets based on time periods. For example, a new set of locations received can be created for a configurable period of time (for example, six hours).
The sets of locations received from the mobile devices 108 can be stored in a 360 data point database. The 360 data point database can store current and historical locations of the various mobile devices 108. The data database 360 data point can include an ad-hoc database, relational database, object-oriented database. The data point database 360 can be hosted locally or remotely with respect to the location engine 350.
The location calculation module 364 can be used to calculate an average geographic location on sets of data points in the data point database, calculate distances between an average geographic location and locations of various data points, and exclude locations from sets for additional computing. The location calculation module 364 can perform calculations for a particular set (e.g., a set of data points associated with a cell ID) until an exit condition is reached for the particular set. The location calculation module 364 can determine presence areas or presence spaces for each access point (for example, access point 105).
In some implementations, the location calculation module 464 can perform validity checks in the presence areas or presence spaces based on various criteria and various data at the data points using the validity checker 366. For example, the data points received from mobile devices 108 may include Mobile Country Codes (MCCs) and time zone information. The validity checker 366 can compare a presence area or presence space calculated with polygons corresponding to the countries represented by the MCCs and polygons corresponding to the time zones. If a presence area or calculated presence space is located outside the polygons, the validity checker 366 can register an anomaly and remove the access point.
The location filtering engine 368 can determine whether a presence area or presence space can be used to estimate a location for a mobile device that is currently located within a communication range of an access point. The location filtering engine 368 can divide a geographic region into cells 102 of geographic grid 100, or three-dimensional cells 122 of three-dimensional grid 120. The location filtering engine 368 can classify presence areas or presence spaces based on popularity , stability, longevity, and freshness. The location filtering engine 368 can designate top-class presence areas or presence spaces located in each cell 102 or three-dimensional cell 122 to cell 102 or three-dimensional cells.
The presence areas or presence spaces can be defined by a center having coordinates of average latitude, longitude and altitude of the set of locations. The presence areas or presence spaces can be additionally defined by a determined radius based on the distances from the locations in the set of locations to the center. The coordinates of latitude, longitude and altitude of the centers of the presence areas or presence spaces and the radii of the presence areas and presence spaces can be stored in the location database 372. The location database 372 can store designated and unassigned areas of presence and presence spaces. Unassigned presence areas or presence spaces can be designated in subsequent calculations by the location calculation module 364. The location database 372 can be updated periodically by the location calculation module 364.
The data from the location database 372 can be distributed to mobile devices using the data distribution module 376. The data distribution module 376 can send information from the designated presence areas and presence spaces (for example, example, center coordinates and radii) which is associated with access points for mobile devices (eg, mobile device not activated by GPS 110) upon request, via broadcast, or using various broadcast technologies without receiving requests from mobile devices.
In some implementations, the 376 data distribution module can send multiple presence areas or presence spaces to mobile devices in a broadcast session. To reduce the number of location transmissions to mobile devices that can consume communication bandwidth from the mobile device, the data distribution module 376 can use neighbor locator 378 to locate the cells that are neighbors of the cell in which the device mobile 110 is located. Neighboring cells may include, for example, a number of cells surrounding the cell in which the mobile device 110 is located so that the total area of the cell and the surrounding cells cover a certain geographic area (for example, one or two kilometers squares). Sending information about the presence areas and presence spaces associated with multiple cells (e.g., 400 cells) to the mobile device 110 can reduce the number of transmissions when the mobile device 110 moves through the cells. In such implementations, the data distribution module 376 only needs to send an update to the mobile device 110 when the mobile device 110 moves out of all previously sent cells.
Illustrative Process for Determining Mobile Device Locations Using Wireless Access Point Locations
Figure 4a illustrates techniques for determining the locations of mobile devices using locations of wireless access points. Mobile device 400 can be an illustrative mobile device that can use locations of wireless access points to determine its location. An illustrative section of a communication network that includes access points 400 is illustrated.
The mobile device 400 can be located within a communication range of the access point 404a. From access point 404a, mobile device 400 can receive data that includes information about presence areas or presence spaces (including presence areas 406) from neighboring access points. The mobile device 400 can store the received data on a storage device. The stored data can be updated periodically.
In the illustrated example, the mobile device 400 is located within a communication range of the access point 400a. Additionally, mobile device 400 is within the communication ranges for access points 404b, 404c and 404d. Mobile devices 400 can identify access points 404a, 404b, 404c and 404d under wireless communication protocols used in WLAN (for example, IEEE 802.11a). Access points 404a, 404b, 404c and 404d can be identified by the MAC addresses of the access points or other identifiers (for example, Bluetooth ™ identifiers).
The mobile device 400 can identify the presence areas 406a, 406b, 406c and 406d that are associated with the access points 404a to d, respectively. The identification of the presence areas 406a ad may include retrieving information about the presence areas 406a ad from a memory device coupled to the mobile device 400. In some implementations, the mobile device 400 may request the presence areas 406a from a server ad by sending access point identifiers 404a to d to the server.
Based on the presence areas 406a to d, the mobile device 400 can perform an interactive process (for example, a multi-pass analysis) in the presence areas 406a to d. The interactive process can produce geographic area 402, which can be an estimate of the current geographic location of the mobile device 400. Geographic area 402 can be a geographic space when three-dimensional location information is used. Mobile device 400 can display the current estimated location on a display device (for example, on a map display).
Figure 4b is a flow chart illustrating the illustrative process 410 of determining a location of a mobile device using a location database. For reasons of convenience, process 410 will be described with reference to the mobile device 400 which implements process 410.
The mobile device 400 can identify (412) a current access point to which the mobile device 400 is connected. The mobile device 400 can use the current access point to determine whether to request an update to a location database that is hosted on the mobile device 400. The location database hosted on the mobile device 400 can include access point records previously downloaded to the mobile device 400. Records in the location database hosted on the mobile device 400 may include access point identifiers (eg MAC addresses) and corresponding locations (eg latitude / longitude coordinates).
At stage 412, mobile device 400 can determine whether the current access point is included in the location database records. The mobile device can query the location database using an identifier (for example, a MAC address) of the current access point to which the mobile device 400 is connected. If the current access point is included in the location database records, the mobile device can determine that the location database is up to date. If the current access point is not included in the location database records, the mobile device 400 can determine that the location database needs updating.
The mobile device 400 can request (414) from a server an update of the location database of the mobile device 400 using the identifier of the current access point. The records in the location database, including the identifiers and locations of the access points, can be refreshed using new identifiers and locations of new access points. The mobile device 400 can send the identifier of the current access point to the server. The server can identify a cell as a central cell in a geographic grid. A central cell can be a cell that includes a location associated with the current access point identifier to the server and sends all access point locations in the cell and neighboring cells to the mobile device 400.
The mobile device 400 can receive (416) a set of second locations associated with the second access points. The second access points can be distributed in the central cell or in the cells neighboring the central cell in the geographic grid. The location associated with the current access point (for example, a center in a circular area) can be located in the central cell. Neighboring cells can be the cells that are located near the central cell in the geographic grid. The number of neighboring cells can have a value so that the central cell and neighboring cells can cover a predetermined geographical area (for example, 1.5 square kilometers). Access point identifiers and locations associated with access points can be included in the update when the locations associated with access points are within the geographic area covered by the central cell and neighboring cells. An illustrative advantage of updating the location of the mobile device 400 when the current access point is not included in the location database records is that when the mobile device 400 moves from cell to cell, no update is necessary until the mobile device 400 move out of a large area compared to the coverage area of a single access point. In this way, frequent updates can be avoided, saving resources for the mobile device 400 (for example, bandwidth, CPU cycle, battery power) and server (for example, the server does not need to send frequent updates to a large number of mobile devices when devices move from one block to the next).
The mobile device 400 can update (418) the location database hosted on the mobile device 400 using the received set of locations and access point identifiers. The update can "centralize" the mobile device 400 in the geographic area covered by the central cell and neighboring cells. The mobile device 400 may not need to request another update until the mobile device 400 moves from the central cell to a cell not covered by one of the neighboring cells. For example, if each cell is approximately 50 meters by 50 meters, and the predetermined geographic area is 1.5 square kilometers, each update can inject approximately 60 cells into the mobile device 400 location database. The mobile device 400 you may not need to request another update unless the mobile device moves out of the area covered by 600 cells.
The mobile device 400 can calculate (420) an actual location of the mobile device 400 using the location database hosted on the mobile device 400. The calculation can be performed using a multi-pass adaptive process performed by the device 400. Additional details of the multi-pass process will be described below with reference to figure 4c. Although other factors (for example, signal strength from several access points) can assist in calculating the current location, these factors are not necessary in the calculation.
The mobile device 400 can optionally display (422) the current location of the mobile device 400 on a map display device of the mobile device 400. The illustrative display of the current location will be described in greater detail below, with reference to figure 5.
Figure 4c is a flow chart illustrating an illustrative adaptive multipass process 430 for determining a location of a mobile device. For convenience, process 430 will be described with reference to the mobile device 400 which implements process 430.
The mobile device 400 can receive (432) access point identifiers (for example, access points 404) from a wireless communication network (for example, a WLAN). Access points can be located within a communication range of the mobile device 400. Identifiers do not have to be associated with the access points to which the mobile device 400 is connected or can connect. For example, in a particular location, the mobile device 400 may be within the communication range of between three and twenty access points. The mobile device 400 may be able to connect only two of the access points (due, for example, to the security settings of the access points and mobile device 400). The mobile device 400 can be actively connected to only one of the two access points. However, all access point identifiers received by the mobile device 400 can be used in the calculation.
The mobile device 400 can identify (433) a set of locations associated with the access points from the location database of the mobile device 400. The set of locations can correspond to the presence areas 406 or presence spaces associated with the access point. Each location can be represented by geographic coordinates (for example, latitude, longitude and altitude). Each location can be associated with an identifier (for example, a MAC address) of an access point 404. Mobile device 400 can identify locations using a database query.
The mobile device 400 can calculate (434) an average geographic location using the locations in the set. The calculation of the average geographic location can include the calculation of an average of latitudes, longitudes and altitudes of the locations in the set, and designation of a position in the average latitude, longitude and altitude calculated as the average geographic location. In some implementations, the calculation of the average geographic location may include the designation of a location at a median latitude, a median longitude, and a median altitude of the positions in the average geographic location set.
The mobile device 400 can calculate (436) the distances between the locations in the set and the average geographic location. In some implementations, the system can calculate a linear distance between each of the locations in the set and the average geographic location in the Euclidean space. In some implementations, the system can calculate a geodetic distance between each of the locations in the set and the average geographic location, taking into account the curvature of the earth.
The distances calculated at stage 436 can be designated as a radius associated with a center. The center can be the average geographic location calculated at stage 434, which can be a center of a circle (for example, the circle surrounding geographical area 402). The radius of the circle can be determined based on at least one distance between a location in the set of locations and the average geographic location. In some implementations, the radius can be equal to the longest distance between the average geographic location and a remaining location in the set. In some implementations, the radius can be a distance that, where a circle is drawn using the radius and the average geographic location as a center, the circle can contain a percentage (for example, 80%) of the remaining locations in the set. The radius can represent a margin of error beyond which an estimate of the location of a GPS-enabled mobile device is more likely to be statistically significant.
Mobile device 400 can exclude (438) from the set at least one location based on a distance between the average location and the location. In some implementations, the system may exclude locations whose distance to the average geographic location exceeds a threshold distance. With each pass in the multi-pass analysis, the system can increase the accuracy of the average geographic location estimated by excluding locations that appear to be distant from a concentration of locations (for example, a cluster). A location that is far from a grouping of locations may be less useful in estimating a current location on the mobile device 400 and can be excluded. In many implementations, the limit distance can vary from one pass to the next. For example, the limit distance can be a set of distances corresponding to the passages (for example, 50 meters for the first pass, 30 meters for the second pass, etc.) The system can exclude at least one location from the set when the distance between the average geographic location and the location exceeds the limit distance.
In some implementations, the mobile device 400 may de-terminate a limit percentage of locations to be excluded. The limit percentage can have a pre-specified value (for example, 5%). At each pass, the mobile device 400 can exclude the limit percentage of locations that are located furthest from the average geographic location.
The mobile device 400 can repeat stages 434, 436 and 438 of process 430 until an exit condition is satisfied. The system can determine (440) whether an exit condition is satisfied to end the repetition. In some implementations, the exit condition can be satisfied when a number of repetitions reaches a limit number (for example, five times). The limit number can refer to a number of locations in the set originally received. The limit number, in addition to the percentage of locations to be excluded, can be configurable to fine-tune a balance between certainty (for example, a larger area of presence can result in greater confidence that a mobile device in the cell is actually located in the presence area) and accuracy (for example, a smaller presence area can result in a more accurate location for a mobile device). For example, when the percentage is set to 95% and the number of passes is set to 10, the final pass can produce a circle that encompasses about 60% of all location data points.
In some implementations, the exit condition of stage 330 can be satisfied when the presence area or presence space is sufficiently small. In areas where access points 404 are highly concentrated, an estimated current location may include a sufficiently small area so that additional passages will not necessarily increase accuracy. The repetition of stages 434, 436, and 438 may end when the radius of the circle reaches below a limit radius. For example, the limit radius can be 8 to 10 meters. The boundary radius can be based on radii of presence areas 406. In some implementations, if some radii of presence areas 406 are small enough, the limit radius may be small to reflect a confidence in the estimate.
The mobile device 400 can designate (442) the current location of the mobile device 400 using a circle having the average geographic location as a center and a radius based on at least one calculated distance. The center can be represented in latitudes and longitudes. In some implementations where distances are calculated in three-dimensional spaces, the center can be additionally represented at an altitude. In some implementations, the mobile device can additionally display the current location on a display device in a map user interface. The illustrative map user interfaces will be described below with reference to figure 5.
Illustrative User Interfaces for Determining Mobile Device Locations
Figure 5 illustrates an illustrative user interface for determining the locations of mobile devices using locations of wireless access points. In Figure 5, illustrative map 502 of a geographical area is displayed on mobile device 500. In some implementations, mobile device 500 can display map 502 on the touchscreen 530 of mobile device 500. Map 502 can be displayed when a user selects a map object to view mapping and location-based services. In some implementations, objects, such as a map object, can be selected by activating speech. A search bar 504 and a bookmark list object 506 can be displayed at the top of the map 502. Below the bottom of the map one or more display objects can be displayed, for example, a search object 508, a directions object 510, a map display object 512, and a current location object 514.
The search bar 504 can be used to find an address or other location on the map. For example, a user can register their home address in the search bar 504, and the region containing the address will be displayed on map 502. The bookmark list object 506 can, for example, pull up a bookmark list that contains addresses that are frequently visited, such as the user's home address. The list of bookmarks can also, for example, contain special bookmarks such as the current location (for example, the current location of the mobile device 500).
The search object 508 can be used to display the search bar 504 and other search menus related to the map. The directions object 510 can, for example, bring up a menu interface that allows the user to record a starting location and an ending location. The interface can then display information (for example, directions and travel time for a route from the initial location to the final location). The map visualization object 512 can bring up a menu that will allow the user to select the display options for map 502. For example, map 502 can be changed from black and white to color, the background of the map can be changed, or the user can change the brightness of the map.
The current location object 514 can allow the user to see a geographical area 516 on map 502 indicating where device 500 is currently located. Geographic area 516 can correspond to an estimated geographical area (for example, geographical area 402) whose center is an average geographical location of the data points associated with the access points that are within the communication range of the mobile device 500. The radius Geographic area 516 can be determined based on a distance between the average geographic location and one or more locations associated with the access points. A special current location bookmark can be found in the bookmark list when the current location object 514 is selected. If the special current location bookmark has been previously configured in the bookmark list, the old bookmark information can, for example, be replaced with new current location information. In some implementations, the current special location bookmark is tied to the center of geographic area 516. That is, the current special location bookmark can include coordinates for the center of geographic area 516. Geographic area 516 can be based on data from location determined or estimated using the location instructions stored on a mobile device memory device 500. Geographic area 516 can, for example, be represented by a circle, rectangle, square, hexagon, or other region enclosed with lines of reference, or some other distinctive element to differentiate geographic area 516 from map 502.
In some implementations, geographic area 516 may indicate a region in which the mobile device 500 is determined or estimated to be located, and the geographic area may not necessarily be centered on the actual current position of the mobile device 500. In this example, the mobile device 500 it can be located outside the center within the geographical area. In another example, geographic area 516 can be centered on an estimated current position of the mobile device 500.
The mobile device 500 can, for example, centralize the map display in the geographical area 516 when the current location object 514 is selected. In some implementations, the level of map approximation can be adjusted based on the accuracy of the location data or technology, system, or served that provides the location data. For example, the map can be distanced when the mobile device 500 does not receive GPS signals for lower accuracy and uses the access point data to determine its location. The map can be zoomed in for greater accuracy if the mobile device 500 is able to use GPS location data to determine your current location. In some implementations, the level of approximation can be based on the speed of the mobile device 500 (for example, the map can be distanced at higher speeds and approximated when the mobile device 500 is not moving). A combination of precision and speed can also be used.
If all location-based data recovery methods fail (for example, when the mobile device 500 is not within the communication range of any access point, or when the validity checker 366 determines that no area of presence can be associated with any of the access points where the mobile device 500 can be connected), and there are no other systems or services available for determining or estimating the current position of the mobile device 500, an error can be displayed to the user and no geographic area is displayed on map 502. The error may, for example, contain a message to the user informing him of the failure and the possible reason or reasons for the failure.
The current location object 514 can be selected, for example, to activate the estimation and display of geographic area 516 on map 502, to get directions to or from the current estimated location (that is, the center of geographic area 516), to send the current estimated location of the mobile device 500 to a friend (for example, so that the friend can proceed to the same location), or to create a bookmark for the current estimated location. Illustrative System Architecture
Figure 6 is a block diagram of an illustrative system architecture 600 for implementing the features and operations described with reference to figures 1 to 5. Other architectures are possible, including architectures with more or less components. In some implementations, the 600 architecture includes one or more 602 processors (for example, dual-core Intel® Xeon® processors), one or more 604 output devices (for example, LCD), one or more 606 network interfaces, one or more 608 input devices (for example, mouse, keyboard, touchscreen) and one or more computer-readable media 612 (for example, RAM, ROM, SDRAM, hard disk, optical disk, flash memory, etc. .). These components can exchange communications and data through one or more 610 communication channels (for example, buses) that can use various hardware and software to facilitate the transfer of data and control signals between the components.
The term "computer-readable medium" refers to any medium that participates in providing instructions for the 602 processor to run, including without limitation, non-volatile media (for example, optical or magnetic disks), volatile media (for example, memory ), and broadcast media. The transmission media includes, without limitation, coaxial cables, copper wire and fiber optics.
The computer-readable medium 612 may additionally include the operating system 614 (for example, Mac OS® server, Windows® NT server), network communication module 616, database interface 620, data collection module 630, module data distribution 640, and location calculation module 650, as described with reference to figures 1 to 5. Operating system 614 can be multi-user, multi-processing, multi-tasking, multi-sequence, real-time, etc. The operating system 614 performs basic tasks, including, but not limited to: acknowledging the registration and providing output to devices 606, 608; maintenance of tracking and management files and directories in 612 computer-readable media (for example, memory or a storage device); control of peripheral devices, and traffic management of one or more 610 communication channels. The 616 network communications module includes several components for establishing and maintaining network connections (for example, software for implementing communication protocols, such as such as TCP / IP, HTTP, etc.). Database interface 620 may include interfaces to one or more databases (e.g., data point database 360 and location database 372) in a file system. Databases can be organized under a hierarchical folder structure, folders mapping the directories in the file system. The data collection module 630 can include components for collecting data from multiple wireless mobile devices connected to the 600 system through access points or through other communication channels (for example, cellular networks). The data distribution module 640 can perform various functions for the transmission of location data in association with access points of a wireless communications network to computing devices, including mobile devices 108 and 110. The calculation module Location 650 may include one or more components to perform analysis of multiple passages at locations received from mobile devices 108.
The 600 architecture can be included in any device capable of hosting a database application program. The 600 architecture can be implemented in parallel processing or non-hierarchical infrastructure or in a single device with one or more processors. The software can include multiple software components or it can be a single body of code.
The described features can be advantageously implemented in one or more computer programs that are executable in a programmable system including at least one programmable processor coupled to the receiving data and instructions from, and transmitting data and instructions to a system data storage, at least one input device, and at least one output device. A computer program is a set of instructions that can be used, directly or indirectly, on a computer to perform a certain activity or achieve a certain result. A computer program can be written in any form of programming language (for example, Objective-C, Java), including compiled or interpreted languages, and can be developed in any form, including as an independent program or as a module, component , subroutine, browser-based network application, or other unit suitable for use in a computing environment.
Suitable processors for executing an instruction program include, by way of example, both general and special purpose microprocessors, and the single processor or one among multiple processors or cores, of any type of computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor to execute instructions and one or more memories to store instructions and data. Generally, a computer can also include, or can be operationally attached to communicate with, one or more mass storage devices to store data files; such devices include magnetic disks, such as internal hard drives and removable disks; magneto-optical discs; and optical discs. Suitable storage devices to tangibly embed computer program instructions and data include all forms of non-volatile memory, including, for example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices ; magnetic disks such as internal hard drives and removable disks; magneto-optical discs; and CD-ROM and DVD-ROM. The processor and memory can be supplemented by, or incorporated into ASICs (application-specific integrated circuits).
To provide interaction with a user, the features can be implemented on a computer having a display device such as a CRT (cathode ray tube) or LCD monitor (liquid crystal monitor) for displaying information to the user and a keyboard and a pointing device such as a mouse or a TrackBall by which the user can provide registration on the computer.
The features can be implemented in a computer system that includes a rear end component, such as a data server, or that includes a middleware component, such as an application server or an Internet server, or that includes a component front end, such as a client computer having a graphical user interface or an Internet browser, or any combination thereof. The system components can be connected by any form or means of digital data communication such as a communication network. Examples of communication networks include, for example, LAN, WAN and computers and networks forming the Internet.
The computer system can include clients and servers. A client and server are generally remote from each other and typically interact over a network. The relationship between client and server arises because of computer programs running on the respective computers and having a client-server relationship with each other. Illustrative Mobile Device Architecture
Figure 7 is a block diagram of an illustrative architecture 700 of a mobile device. The mobile device can be, for example, a laptop computer, a personal digital assistant, a cell phone, an electronic tablet, a network device, a camera, a smart phone, a radio service mobile phone in an improved general package ( EGPRS), a network base station, a media device, a navigation device, an e-mail device, a game console, or a combination of any two or more of these data processing devices or other data processing devices Dice.
The mobile device may include a memory interface 702, one or more data processors, image processors and / or central processing units 704 and a peripheral interface 706. Memory interface 702, one or more processors 704 and / or a Peripheral interface 706 may be separate components or may be integrated into one or more integrated circuits. The various components in the mobile device 100 can be coupled by one or more communication buses or signal lines.
Sensors, devices, and subsystems can be coupled to the 706 peripheral interface to facilitate multiple functionalities. For example, the motion sensor 710, the light sensor 712, and the proximity sensor 714 can be coupled to the peripheral interface 706 to facilitate the orientation, lighting and proximity of the mobile device. The 715 location processor (for example, the GPS receiver) can be connected to the 706 peripheral interface to provide geolocation. The electronic magnetometer 716 (for example, an integrated circuit chip) can also be connected to the 706 peripheral interface to provide data that can be used to determine the direction of magnetic North.
The camera subsystem 720 and an optical sensor 722, for example, a charged coupled device (CCD) or a complementary metal oxide semiconductor optical sensor (CMOS) can be used to facilitate camera functions, such as recording photographs and video clips.
Communication functions can be facilitated through one or more wireless communication subsystems 724, which can include radio frequency receivers and transmitters and / or optical receivers and transmitters (for example, infrared). The specific design and implementation of the communication subsystem 724 may depend on the communication networks through which the mobile device must operate. For example, the mobile device may include 724 communication subsystems designed to operate over a GSM network, a GPRS network, an EDGE network, a Wi-Fi or WiMAX network and a Bluetooth network. In particular, wireless communication subsystems 724 may include host protocols so that the device can be configured as a base station for other wireless devices.
The audio subsystem 726 can be coupled with a speaker 728 and a microphone 730 to facilitate voice-activated functions, such as voice recognition, voice duplication, digital recording, and telephony functions.
The I / O subsystem 740 can include a touch screen controller 742 and / or other input controllers 744. The touch screen controller 742 can be coupled to a touch screen 746 or part. The touch screen 746 and the touch screen controller 742 can, for example, detect contact and movement or breakage using any of a plurality of touch sensitivity technologies, including, but not limited to capacitive, resistive technologies. , infrared and surface acoustic wave, in addition to other proximity sensor sets or other elements for determining one or more points of contact with the 746 touch screen.
Other input controllers 744 can be coupled with other input / control devices 748, such as one or more buttons, oscillating switches, thumb wheels, infrared port, USB port and / or a pointing device such as a pen. The one or more buttons (not shown) may include an up / down button to control the volume of the 728 speaker and / or 730 microphone.
In an implementation, pressing the button for a first duration can disengage a 746 touch screen lock; and pressing the button for a second duration that is longer than the first duration can turn the mobile device on or off. The user may be able to customize functionality of one or more of the buttons. The 746 touch screen can, for example, also be used to implement virtual or soft buttons and / or the keyboard.
In some implementations, the mobile device can display recorded audio and / or video files, such as MP3, AAC and MPEG files. In some implementations, the mobile device may include the functionality of an MP3 player, such as an iPod ™. The mobile device may therefore include a pin connector that is compatible with the iPod. Other input / output and control devices can also be used.
Memory interface 702 can be coupled to memory 750. Memory 750 can include high-speed random access memory and / or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices , and / or flash memory (for example, NAND, NOR). Memory 750 can store operating system 752, such as Darwin, RTXC, LINUX, U-NIX, OS X, WINDOWS or an embedded operating system such as Vx-Works. The 752 operating system may include instructions for handling basic system services and performing hardware-dependent tasks. In some implementations, the 752 operating system may include a kernel (for example, UNIX kernel).
Memory 750 can also store communication instructions 754 to facilitate communication with one or more additional devices, one or more computers and / or one or more servers. Memory 750 may include graphical user interface instructions 756 to facilitate graphical user interface processing; sensor processing instructions 758 to facilitate processing related to sensor and functions, telephone instructions 760 to facilitate telephone related processes and functions; instructions for sending electronic messages 762 to facilitate the processes and functions related to electronic messages; network browsing instructions 764 to facilitate processes and functions related to network browsing; 766 media processing instructions to facilitate processes and functions related to media processing; GPS / Navigation instructions 768 to facilitate camera-related processes and functions; magnetometer data 772 and calibration instructions 774 to facilitate magnetometer calibration. Memory 750 may include location instructions 776 that can be used to transmit a current location to an access point, and to determine an estimated current location based on the location data associated with the access points that the mobile device is within. of a communication strip. The 750 memory can also store other software instructions (not shown), such as safety instructions, network video instructions to facilitate network video related processes and functions, and / or network purchase instructions to facilitate processes and functions related to network purchases. In some implementations, media processing instructions 766 are divided into audio processing instructions and video processing instructions to facilitate processes related to audio processing and processes and functions related to video processing, respectively. An International Mobile Equipment Identity (IMEI) activation record or similar hardware identifier can also be stored in 750 memory.
Each of the instructions and applications identified above can correspond to a set of instructions for performing one or more functions described here. These instructions do not have to be implemented as separate software programs, procedures or modules. Memory 750 may include additional instructions or fewer instructions. In addition, various functions of the mobile device can be implemented in hardware and / or software, including one or more application-specific integrated circuits and / or signal processing.
A number of implementations of the invention have been described. However, it will be understood that various modifications can be made without departing from the spirit and scope of the invention. For example, location-aware devices are referred to as enabled by GPS. Location-aware mobile devices can also be based on triangulation or other technology. Cells are represented as substantially rectangular in the figures. The actual shape of a cell can vary. Locations are described as "circles". The term "circle" used in this specification can include any geometric shape (for example, an ellipse, a square, a convex or concave polygon, or a free-style shape) that does not have to be perfectly circular, but is enclosed or has an appearance of an enclosure. The radius of a geometric shape that is not perfectly circular can include an average distance between the various points at the limit of the geometric shape and a center of the geometric shape. 5 WiFi and WiMax networks are used as examples. Another wireless technology (for example, cellular network) can also be employed. Accordingly, other implementations are within the scope of the attached claims.
权利要求:
Claims (29)
[0001]
1. Method performed by a computer characterized by understanding: receiving a plurality of sets of locations from the first mobile devices that are located within a communication range of an access point of a wireless communications network, each set of locations corresponding to a distinct access point determine a geographic location associated with each access point based on an average of the set of locations received that correspond to the access point; designate the geographic location associated with each access point to a cell in a geographic grid for each cell in the geographic grid, classify geographic locations associated with the cell based on a number of locations in the set received from the corresponding access point, where a location geographic that corresponds to an access point associated with a larger set of locations receives a higher ranking; filter the geographic locations assigned to each cell, including preserving a group of one or more geographic locations that include the highest ranked geographic location for the cell, and providing the geographic location associated with the access point and geographic locations of the designated access points for cells neighboring the cell in the geographic grid for a second mobile device connected to the access point.
[0002]
2. Method, according to claim 1, characterized by the fact that the access point is identified by a Media Access Control (MAC) address of the access point, the MAC address being associated with the set of locations that correspond to the access point.
[0003]
3. Method, according to claim 1, characterized by the fact that the wireless communications network is a Wireless Local Area Network (WLAN) using protocols based on the Institute of Electrical and Electronic Engineers (IEEE) 802.11.
[0004]
4. Method according to claim 1, characterized by the fact that determining the geographic location associated with the access point includes: applying a multiple-pass analysis to the set of locations associated with the access point, including exclusion at least one location of the assembly in each pass.
[0005]
5. Method, according to claim 4, characterized by the fact that the application of multipass analysis includes: (a) calculating an average geographical location using the set of locations associated with the access point; (b) calculate the distances between the average geographic location and the locations in the set; (c) exclude at least one location from the pool based on a distance between the average geographic location and at least one location; (d) repeat (a), (b) and (c) until an exit condition is satisfied; and (e) designate a geographical location associated with the access point using a circle having the average geographical location as a center of a radius based on at least one calculated distance.
[0006]
6. Method according to claim 1, characterized by the fact that the geographic grid includes a rectangular geographic area identifiable in the geographic grid by a latitude, a longitude, and an altitude of an identification point of the geographic area.
[0007]
7. Method, according to claim 1, characterized by the fact that the geographic grid defines a three-dimensional space identifiable in the geographic grid by a latitude, a longitude, and an altitude of an identification point in the enclosure.
[0008]
8. System, characterized by comprising: one or more computers configured to carry out the operations comprising: receiving a plurality of sets of locations of the first mobile devices that are located within a communication range of an access point of a communications network without each set of locations corresponding to a separate access point; determine a geographic location associated with each access point based on an average of the set of received locations that correspond to the access point; designate the geographic location associated with each access point to a cell in a geographic grid for each cell in the geographic grid, classify geographic locations associated with the cell based on a number of locations in the set received from the corresponding access point, where a location geographic that corresponds to an access point associated with a larger set of locations receives a higher ranking; filter the geographic locations assigned to each cell, including preserving a group of one or more geographic locations that include the highest ranked geographic location for the cell, and providing the geographic location associated with the access point and geographic locations of the designated access points for cells neighboring the cell in the geographic grid for a second mobile device connected to the access point
[0009]
9. System, according to claim 8, characterized by the fact that the determination of the geographic location associated with the access point includes: applying a multiple-pass analysis to the set of locations associated with the access point, including the exclusion of at least one location from the set in each passage.
[0010]
10. System, according to claim 9, characterized by the fact that the application of the multi-pass analysis includes: (a) calculating an average geographical location using the set of locations associated with the access point; (b) calculate distances between the average geographic location and locations in the set; (c) exclude at least one location from the pool based on a distance between the average geographic location and at least one location; (d) repeat (a), (b), and (c) until an exit condition is satisfied; and (e) designate a geographical location associated with the access point using a circle having the average geographical location as a center and radius based on at least one calculated distance.
[0011]
11. System, according to claim 10, characterized by the fact that the exit condition is satisfied when a number of repetitions reaches a limit number.
[0012]
12. System, according to claim 10, characterized by the fact that the exit condition is satisfied when the radius of the circle reaches below a radius limit.
[0013]
13. System according to claim 8, characterized by the fact that the cell of the geographic grid includes a rectangular geographic area identifiable in the geographic grid by a latitude and a longitude of an identification point of the geographic area.
[0014]
14. System according to claim 8, characterized by the fact that the geographic grid defines a three-dimensional space, and the cell includes a three-dimensional enclosure identifiable in the geographic grid by a latitude, a longitude and an altitude of an identification point in the enclosure.
[0015]
15. Computer program product stored in a tangible form in a storage device, operable to make the data processing device perform the operations characterized by understanding: receiving a plurality of sets of locations from the first mobile devices that are located within a communication range of a wireless communications network access point, each set of locations corresponding to a distinct access point determine a geographic location associated with each access point based on an average of the set received from locations that correspond to a distinct access point; designate the geographic location associated with each access point to a cell in a geographic grid for each cell in the geographic grid, classify geographic locations associated with the cell based on a number of locations in the set received from the corresponding access point, where a location geographic that corresponds to an access point associated with a larger set of locations receives a higher ranking; filter the geographic locations assigned to each cell, including preserving a group of one or more geographic locations that include the highest-ranked geographic location for the cell, and providing the geographic location associated with the access point and geographic locations of the designated access points for cells neighboring the cell in the geographic grid for a second mobile device connected to the access point.
[0016]
16. Product, according to claim 15, characterized by the fact that the access point is identified by a MAC address of the access point, the MAC address being associated with the set of locations that correspond to the access point.
[0017]
17. Product, according to claim 15, characterized by the fact that the wireless communications network is a WLAN using protocols based on IEEE 802.11.
[0018]
18. Product according to claim 15, characterized by the fact that determining the geographic location associated with the access point includes: applying a multiple-pass analysis to the set of locations received, including excluding at least one location from the each pass associated with the access point.
[0019]
19. Product, according to claim 18, characterized by the fact that the application of a multipass analysis includes: (a) calculating an average geographical location using the set of locations associated with the access point; (b) calculate the distances between the average geographic location and locations in the set; (c) exclude at least one location from the pool based on a distance between the average geographic location and at least one location; (d) repeat (a), (b), (c) until an exit condition is satisfied; and (e) designate a geographical location associated with the access point using a circle having the average geographical location as a center and radius based on at least one calculated distance.
[0020]
20. Product, according to claim 19, characterized by the fact that the exit condition is satisfied when a number of repetitions reaches a limit number.
[0021]
21. Method, according to claim 1, characterized by the fact that classifying geographic locations assigned to each cell is additionally based on at least one among a stability, a longevity or a current location in the set associated with each of the points of access corresponding to each geographic location
[0022]
22. Method according to claim 21, characterized by the fact that the stability of an access point corresponds to a stability of the geographical location associated with the access point, as determined at a different time, the longevity of an access point access corresponds to a length of time that the access point exists, and the actuality of the access point corresponds to a more recent location received from a first device that is located within the communication range of the access point.
[0023]
23. Method, according to claim 1, characterized by the fact that the delivery occurs after the detection that the second mobile device is moving outside a geographic area.
[0024]
24. System, according to claim 9, characterized by the fact that classifying geographic locations assigned to each cell is additionally based on at least one among a stability, a longevity or a current location in the set associated with each of the points of access corresponding to each geographic location.
[0025]
25. System according to claim 24, characterized by the fact that the stability of an access point corresponds to a stability of the geographical location associated with the access point, as determined at a different time, the longevity of an access point access corresponds to a length of time that the access point exists, and the actuality of the access point corresponds to a more recent location received from a first device that is located within the communication range of the access point.
[0026]
26. System according to claim 9, characterized by the fact that the delivery occurs after the detection that the second mobile device is moving outside a geographic area.
[0027]
27. Product, according to claim 15, characterized by the fact that classifying geographic locations assigned to each cell is additionally based on at least one among a stability, a longevity or a current location in the set associated with each of the points of access corresponding to each geographic location.
[0028]
28. Product according to claim 27, characterized by the fact that the stability of an access point corresponds to a stability of the geographical location associated with the access point, as determined at a different time, the longevity of an access point access corresponds to a length of time that the access point exists, and the actuality of the access point corresponds to a more recent location received from a first device that is located within the communication range of the access point.
[0029]
29. Product according to claim 15, characterized by the fact that the delivery occurs after the detection that the second mobile device is moving outside a geographical area.
类似技术:
公开号 | 公开日 | 专利标题
BR112012017530B1|2021-04-13|MANAGING A LOCATION DATABASE FOR NETWORK-BASED POSITIONING SYSTEM
KR101343174B1|2013-12-19|Determining a location of a mobile device using a location database
JP5389275B2|2014-01-15|Location filtering using country codes
US8447326B2|2013-05-21|Selective location determination
AU2016225929A1|2016-09-29|Managing a location database for network-based positioning system
AU2015202130A1|2015-05-14|Managing a location database for network-based positioning system
同族专利:
公开号 | 公开日
US9119168B2|2015-08-25|
AU2010341772A1|2012-08-23|
AU2010341772B2|2015-02-19|
MX2012008170A|2012-11-06|
JP5395963B2|2014-01-22|
US20130231132A1|2013-09-05|
EP2524553B1|2019-05-22|
US8433334B2|2013-04-30|
KR101355269B1|2014-01-27|
JP2014060737A|2014-04-03|
JP2013517679A|2013-05-16|
EP2524553A1|2012-11-21|
CN104125638B|2018-02-02|
WO2011087529A1|2011-07-21|
CN102204374B|2014-05-07|
US20110176523A1|2011-07-21|
CN104125638A|2014-10-29|
JP5722408B2|2015-05-20|
KR20120124446A|2012-11-13|
BR112012017530A2|2016-06-28|
CN102204374A|2011-09-28|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题

GB9016277D0|1990-07-25|1990-09-12|British Telecomm|Location and handover in mobile radio systems|
US6278936B1|1993-05-18|2001-08-21|Global Research Systems, Inc.|System and method for an advance notification system for monitoring and reporting proximity of a vehicle|
US5412388A|1993-08-11|1995-05-02|Motorola, Inc.|Position ambiguity resolution|
US5444450A|1993-08-11|1995-08-22|Motorola, Inc.|Radio telecommunications system and method with adaptive location determination convergence|
US5493286A|1994-03-10|1996-02-20|Motorola, Inc.|Method for providing communications within a geographic region|
US5539924A|1994-03-10|1996-07-23|Motorola, Inc.|Method for providing communications within a geographic region|
US5519760A|1994-06-22|1996-05-21|Gte Laboratories Incorporated|Cellular network-based location system|
US5570412A|1994-09-28|1996-10-29|U.S. West Technologies, Inc.|System and method for updating a location databank|
US5508707A|1994-09-28|1996-04-16|U S West Technologies, Inc.|Method for determining position by obtaining directional information from spatial division multiple access -equipped and non-SDMA-equipped base stations|
US5913170A|1994-11-16|1999-06-15|Highwaymaster Communications, Inc.|Locating system and method using a mobile communications network|
US5642303A|1995-05-05|1997-06-24|Apple Computer, Inc.|Time and location based computing|
US5802468A|1995-06-28|1998-09-01|Mci Corporation|System and method for identifying calling areas within a communication system|
US5945944A|1996-03-08|1999-08-31|Snaptrack, Inc.|Method and apparatus for determining time for GPS receivers|
US5945948A|1996-09-03|1999-08-31|Motorola, Inc.|Method and apparatus for location finding in a communication system|
WO1998010307A1|1996-09-09|1998-03-12|Dennis Jay Dupray|Location of a mobile station|
US8135413B2|1998-11-24|2012-03-13|Tracbeam Llc|Platform and applications for wireless location and other complex services|
JPH11196452A|1997-12-26|1999-07-21|Hitachi Ltd|Mobile communication terinal, processer and position register area setting method|
US6122520A|1998-02-13|2000-09-19|Xerox Corporation|System and method for obtaining and using location specific information|
US6236861B1|1998-07-30|2001-05-22|Ramot University Authority For Applied Research And Development Ltd.|Method for tracking mobile users in a cellular network|
AU6249799A|1998-09-22|2000-04-10|Iridium Ip Llc|Method and system for providing a global satellite based telecommunication network|
US6269246B1|1998-09-22|2001-07-31|Ppm, Inc.|Location determination using RF fingerprinting|
JP2000134662A|1998-10-26|2000-05-12|Fujitsu Ltd|Mobile communication system and mobile machine|
US6321092B1|1998-11-03|2001-11-20|Signal Soft Corporation|Multiple input data management for wireless location-based applications|
US7783299B2|1999-01-08|2010-08-24|Trueposition, Inc.|Advanced triggers for location-based service applications in a wireless location system|
DE19911938A1|1999-03-17|2000-09-21|Viag Interkom Gmbh & Co|Communication system for mobile radio and a suitable method for this|
US6232915B1|1999-08-31|2001-05-15|Qwest Communications International Inc.|System and method for identifying clusters of geographic locations|
US6490519B1|1999-09-27|2002-12-03|Decell, Inc.|Traffic monitoring system and methods for traffic monitoring and route guidance useful therewith|
US6424840B1|1999-11-05|2002-07-23|Signalsoft Corp.|Method and system for dynamic location-based zone assignment for a wireless communication network|
US6445937B1|1999-12-02|2002-09-03|Lucent Technologies Inc.|Methods and apparatus for mobile phone power management|
US7457628B2|2000-02-29|2008-11-25|Smarter Agent, Llc|System and method for providing information based on geographic position|
US6625457B1|2000-04-11|2003-09-23|Ericsson Inc.|Mobile terminal with location database|
US8050686B1|2000-08-29|2011-11-01|Motorola Mobility, Inc.|Method of enabling low tier location applications|
US6856807B1|2000-09-07|2005-02-15|Ericsson Inc.|Method to control the update frequency of a positioning device by a mobile terminal|
US20020067308A1|2000-12-06|2002-06-06|Xerox Corporation|Location/time-based reminder for personal electronic devices|
FI111901B|2000-12-29|2003-09-30|Ekahau Oy|Estimation of position in wireless communication networks|
US7133909B2|2001-01-12|2006-11-07|Microsoft Corporation|Systems and methods for locating mobile computer users in a wireless network|
US7576692B2|2001-02-23|2009-08-18|Nokia Corporation|Method for positioning, a positioning system, and an electronic device|
CA2440750C|2001-03-15|2011-04-26|Qualcomm Incorporated|Time acquisition in a wireless position determination system|
US7072666B1|2001-06-21|2006-07-04|Spring Spectrum L.P.|Method and system for communicating location in a cellular wireless system|
US20030013449A1|2001-07-11|2003-01-16|Hose David A.|Monitoring boundary crossings in a wireless network|
DE60232214D1|2001-09-10|2009-06-18|Ntt Docomo Inc|Location registration and paging in a mobile communication system|
US7974642B2|2001-09-10|2011-07-05|Sirf Technology, Inc.|System and method for estimating cell center position for cell ID based positioning|
FI113731B|2001-09-21|2004-05-31|Locus Portal Corp|Localization procedure for mobile networks|
EP1304897A1|2001-10-22|2003-04-23|Agilent Technologies, Inc. |Methods and apparatus for providing data for enabling location of a mobile communications device|
US7127257B2|2001-12-27|2006-10-24|Qualcomm Incorporated|Use of mobile stations for determination of base station location parameters in a wireless mobile communication system|
WO2003060547A1|2002-01-21|2003-07-24|Nokia Corporation|Provision of location information|
JP2003230171A|2002-01-31|2003-08-15|Ntt Docomo Inc|Migration management device, mobile communication terminal and mobile communication system|
US20040203845A1|2002-03-22|2004-10-14|Lal Amrish K.|Method and system for associating location specific data with data in a mobile database|
US7565155B2|2002-04-10|2009-07-21|Networks In Motion|Method and system for dynamic estimation and predictive route generation|
US6947880B2|2002-04-23|2005-09-20|Motorola, Inc.|Method for improving accuracy of a velocity model|
US20050239478A1|2003-09-03|2005-10-27|Nokia Corporation|Terminal location|
DE60317824T2|2002-10-30|2008-10-30|Research In Motion Ltd., Waterloo|METHOD AND DEVICE FOR THE PREFERRED SELECTION OF A COMMUNICATION NETWORK WHICH MAKES DATA SERVICES AVAILABLE|
US20040203891A1|2002-12-10|2004-10-14|International Business Machines Corporation|Dynamic service binding providing transparent switching of information services having defined coverage regions|
US20040176107A1|2003-02-07|2004-09-09|Lovleen Chadha|Methods and systems for position based tasks for wireless devices|
US20070207816A1|2003-02-24|2007-09-06|Polaris Wireless, Inc.|Location Estimation of Wireless Terminals Based on Combinations of Signal-Strength Measurements and Geometry-of-Arrival Measurements|
DE10316063A1|2003-04-08|2004-10-28|O2 Gmbh & Co. Ohg|Communication system for mobile radio with at least one subscriber area located in an overall area|
US7346359B2|2003-07-31|2008-03-18|Pango Networks, Inc.|Method for RF fingerprinting|
WO2005062066A2|2003-10-22|2005-07-07|Awarepoint Corporation|Wireless position location and tracking system|
US7373109B2|2003-11-04|2008-05-13|Nokia Corporation|System and method for registering attendance of entities associated with content creation|
JP4046705B2|2004-03-23|2008-02-13|三洋電機株式会社|Mobile communication support apparatus, mobile communication terminal, and mobile communication system|
US7460872B2|2004-07-06|2008-12-02|International Business Machines Corporation|Method and application for automatic tracking of mobile devices for computer network processor systems|
AT356507T|2004-09-27|2007-03-15|Ibm|SYSTEM AND METHOD FOR THE DYNAMIC PLANNING OF TASKS DEPENDING ON THE POSITION OF A MOBILE USER|
KR101061265B1|2004-10-19|2011-08-31|야후! 인크.|System and method for location based social networking|
US7433693B2|2004-10-27|2008-10-07|Qualcomm Incorporated|Location-sensitive calibration data|
CN101980550B|2004-10-29|2016-02-10|探空气球无线公司|The method of locating user devices|
US8369264B2|2005-10-28|2013-02-05|Skyhook Wireless, Inc.|Method and system for selecting and providing a relevant subset of Wi-Fi location information to a mobile client device so the client device may estimate its position with efficient utilization of resources|
US7502620B2|2005-03-04|2009-03-10|Shyhook Wireless, Inc.|Encoding and compression of a location beacon database|
US7493127B2|2005-02-22|2009-02-17|Skyhook Wireless, Inc.|Continuous data optimization of new access points in positioning systems|
FR2880505B1|2004-12-31|2007-05-11|Evolium Sas Soc Par Actions Si|METHOD AND SYSTEM FOR OPERATING A MOBILE COMMUNICATIONS NETWORK|
JP4465661B2|2005-03-01|2010-05-19|株式会社カシオ日立モバイルコミュニケーションズ|Mobile communication terminal and communication control method|
WO2006099473A2|2005-03-15|2006-09-21|Mformation Technologies Inc.|System and method for monitoring and measuring end-to-end performance using wireless devices|
US7450064B2|2005-03-22|2008-11-11|Qualcomm, Incorporated|Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system|
US8589532B2|2005-06-24|2013-11-19|Qualcomm Incorporated|Apparatus and method for determining WLAN access point position|
US7478578B2|2005-06-24|2009-01-20|Honeywell International Inc.|Commercial airliner missile protection using formation drone aircraft|
US8126477B2|2005-07-07|2012-02-28|Qualcomm Incorporated|Methods and devices for interworking of wireless wide area networks and wireless local area networks or wireless personal area networks|
CN101253734A|2005-07-07|2008-08-27|高通股份有限公司|Methods and devices for location determination and location-based services in wireless wide area networks, wireless local area networks and wireless personal area networks|
US8311543B2|2005-07-07|2012-11-13|Qualcomm Incorporated|Methods and devices for interworking of wireless wide area networks and wireless local area networks or wireless personal area networks|
US9042917B2|2005-11-07|2015-05-26|Qualcomm Incorporated|Positioning for WLANS and other wireless networks|
US7664511B2|2005-12-12|2010-02-16|Nokia Corporation|Mobile location method for WLAN-type systems|
US20070290924A1|2005-12-14|2007-12-20|Innerwireless, Inc.|Wireless resource monitoring system and method|
KR100651594B1|2005-12-29|2006-11-30|주식회사 팬택|Mobile phone for displaying a direction of destination and method of displaying the direction|
US8706159B2|2006-01-03|2014-04-22|Apple Inc.|Media data transfer|
US7471954B2|2006-02-24|2008-12-30|Skyhook Wireless, Inc.|Methods and systems for estimating a user position in a WLAN positioning system based on user assigned access point locations|
JP2007232458A|2006-02-28|2007-09-13|Seiko Epson Corp|Positioning device, control method of positioning device, control program of positioning device, and computer-readable recording medium for recording control program of positioning device|
US20070233899A1|2006-04-03|2007-10-04|Aborn Justin A|Locating devices|
US7551579B2|2006-05-08|2009-06-23|Skyhook Wireless, Inc.|Calculation of quality of wlan access point characterization for use in a wlan positioning system|
US7551929B2|2006-05-08|2009-06-23|Skyhook Wireless, Inc.|Estimation of speed and direction of travel in a WLAN positioning system using multiple position estimations|
US7515578B2|2006-05-08|2009-04-07|Skyhook Wireless, Inc.|Estimation of position using WLAN access point radio propagation characteristics in a WLAN positioning system|
WO2008054191A2|2006-05-16|2008-05-08|Tomtom International B.V.|Navigation device with automatic gps precision enhancement|
US7561890B2|2006-06-22|2009-07-14|Sony Ericsson Mobile Communications Ab|Hotspot location database system, mobile terminal for use in such a system and method for creating maintaining and updating such a system|
US7768963B2|2006-07-07|2010-08-03|Skyhook Wireless, Inc.|System and method of improving sampling of WLAN packet information to improve estimates of Doppler frequency of a WLAN positioning device|
US7974645B2|2006-08-30|2011-07-05|At&T Mobility Ii Llc|Mobile registration using a service area identifier or plurality of service area identifiers|
CN101512530B|2006-09-06|2016-02-03|皇家飞利浦电子股份有限公司|Find the position of reference mode for location|
US20080225779A1|2006-10-09|2008-09-18|Paul Bragiel|Location-based networking system and method|
GB2443860B|2006-10-19|2011-02-16|Vodafone Plc|Controlling the use of access points in a telecommunications network|
JP4957174B2|2006-10-19|2012-06-20|ソニー株式会社|Location storage device, wireless terminal, location storage system, location registration method, location update method, and program|
US9226257B2|2006-11-04|2015-12-29|Qualcomm Incorporated|Positioning for WLANs and other wireless networks|
US9110903B2|2006-11-22|2015-08-18|Yahoo! Inc.|Method, system and apparatus for using user profile electronic device data in media delivery|
GB2445986A|2007-01-17|2008-07-30|Connect Spot Ltd|Database Update Systems for Wireless communications Systems|
US8798639B2|2007-01-17|2014-08-05|Qualcomm Incorporated|Method and apparatus for using historic network information for determining approximate position|
US8000276B2|2007-02-05|2011-08-16|Wefi, Inc.|Providing easy access to radio networks|
AT429775T|2007-02-15|2009-05-15|Research In Motion Ltd|EMERGENCY NUMBER SELECTION FOR MOBILE COMMUNICATION DEVICE|
KR100896680B1|2007-04-13|2009-05-14|에스케이 텔레콤주식회사|Method and System for Providing Location Measurement of Network Based to Mobile Communication Terminal by Using G-pCell Database According to Location|
US8768356B2|2007-04-23|2014-07-01|At&T Mobility Ii Llc|Dual mode device with MAC address capture and pairing|
US9066199B2|2007-06-28|2015-06-23|Apple Inc.|Location-aware mobile device|
US8290513B2|2007-06-28|2012-10-16|Apple Inc.|Location-based services|
US9109904B2|2007-06-28|2015-08-18|Apple Inc.|Integration of map services and user applications in a mobile device|
US9288751B2|2007-08-29|2016-03-15|Qualcomm Incorporated|Use of position data to select wireless access point|
US20090067420A1|2007-09-11|2009-03-12|General Instrument Corporation|Location Determination for a Packet-Switched Device for Providing Location-Based Services|
US8711034B2|2007-10-02|2014-04-29|Ricoh Co., Ltd.|Geographically self-labeling access points|
EP2056532A1|2007-11-05|2009-05-06|Spotigo GmbH|Determining positions in a wireless radio system|
US8620996B2|2007-11-19|2013-12-31|Motorola Mobility Llc|Method and apparatus for determining a group preference in a social network|
WO2009070138A1|2007-11-29|2009-06-04|David Stackpole|Dynamic geosocial networking|
WO2009089308A2|2008-01-10|2009-07-16|Apple Inc.|Wireless data acquisition for mobile electronic devices|
US9094933B2|2008-01-14|2015-07-28|Qualcomm Incorporated|Wireless communication paging utilizing multiple types of node identifiers|
US9392572B2|2008-03-04|2016-07-12|Yahoo! Inc.|Using location-based request data for identifying beacon locations|
US20090234876A1|2008-03-14|2009-09-17|Timothy Schigel|Systems and methods for content sharing|
US8213389B2|2008-04-15|2012-07-03|Apple Inc.|Location determination using formula|
US8761786B2|2008-05-02|2014-06-24|Pine Valley Investments, Inc.|System and method for assigning communication cells to servers in a cellular communication system|
US20090280801A1|2008-05-09|2009-11-12|Ajay Malik|Cell Sensor for Access Ports|
US20090303114A1|2008-06-06|2009-12-10|Skyhook Wireless, Inc.|Method and system for determining location using a hybrid satellite and wlan positioning system by selecting the best wlan-ps solution|
US8885736B2|2008-06-13|2014-11-11|Ikanos Communications, Inc.|Systems and methods for positioning and messaging of reserved tones for peak-to-average ratio reduction in DSL systems|
US20090312036A1|2008-06-16|2009-12-17|Skyhook Wireless, Inc.|Methods and systems for improving the accuracy of expected error estimation in location determinations using a hybrid cellular and wlan positioning system|
US7916071B2|2008-12-23|2011-03-29|Andrew, Llc|System and method for determining a reference location of a mobile device|
US20100255856A1|2009-04-03|2010-10-07|Microsoft Corporation|Location Sensing Selection for Mobile Devices|
US8467805B2|2009-05-08|2013-06-18|Andrew Llc|System and method for determining a reference location using cell table data mining|
US8434153B2|2009-08-24|2013-04-30|Microsoft Corporation|Application display on a locked device|
CN101667208B|2009-09-25|2013-06-26|深圳创维数字技术股份有限公司|Digital television receiver and methods for searching and switching programs thereof|
US8374632B2|2010-01-04|2013-02-12|Alcatel Lucent|Method and apparatus for providing geo-location enablement for wireless device|
US8433334B2|2010-01-15|2013-04-30|Apple Inc.|Managing a location database for network-based positioning system|
US8634860B2|2010-01-15|2014-01-21|Apple Inc.|Location determination using cached location area codes|
US8660576B2|2010-01-15|2014-02-25|Apple Inc.|Adaptive location determination|
US8504059B2|2010-01-15|2013-08-06|Apple Inc.|Location filtering using mobile country code|
US8200251B2|2010-01-15|2012-06-12|Apple Inc.|Determining a location of a mobile device using a location database|
US8655371B2|2010-01-15|2014-02-18|Apple Inc.|Location determination using cached location area codes|
US20110252422A1|2010-04-07|2011-10-13|Apple Inc.|Opportunistic Multitasking|
US8447326B2|2010-04-07|2013-05-21|Apple Inc.|Selective location determination|
US8886158B2|2010-12-30|2014-11-11|GreatCall, Inc.|Extended emergency notification systems and methods|DE69634678T2|1995-01-23|2006-01-19|Daiichi Suntory Pharma Co., Ltd.|IMPROVEMENT OR HEALING OF SYMTOMS CAUSED BY ISCHEMIC ILLNESSES AND PHENYLPIPERIDINE COMPOUNDS USED THEREOF|
EP0867183B1|1996-07-22|2004-10-06|Daiichi Suntory Pharma Co., Ltd.|Arylpiperidinol and arylpiperidine derivatives and drugs containing the same|
US8756010B2|2009-10-12|2014-06-17|Qualcomm Incorporated|Method and apparatus for identification of points of interest within a predefined area|
US8660576B2|2010-01-15|2014-02-25|Apple Inc.|Adaptive location determination|
US8200251B2|2010-01-15|2012-06-12|Apple Inc.|Determining a location of a mobile device using a location database|
US8634860B2|2010-01-15|2014-01-21|Apple Inc.|Location determination using cached location area codes|
US8655371B2|2010-01-15|2014-02-18|Apple Inc.|Location determination using cached location area codes|
US8504059B2|2010-01-15|2013-08-06|Apple Inc.|Location filtering using mobile country code|
US8433334B2|2010-01-15|2013-04-30|Apple Inc.|Managing a location database for network-based positioning system|
US8620344B2|2010-04-07|2013-12-31|Apple Inc.|Location-based application program management|
KR101446032B1|2010-05-06|2014-10-02|에스케이텔레콤 주식회사|Method And Apparatus for Measuring Position by Using Wireless LAN Signal|
WO2011150351A2|2010-05-28|2011-12-01|Gvm, Inc.|System and method for collecting and processing agricultural field data|
KR101440836B1|2010-07-08|2014-11-04|에스케이텔레콤 주식회사|Method And Apparatus for Detecting Positioning Error by Using WLAN Signal|
US8923258B2|2010-11-12|2014-12-30|Intel Corporation|Techniques for autonomous wireless network infrastructure assisted location resolution|
US9055408B2|2011-04-02|2015-06-09|Open Invention Network, Llc|System and method for determining geolocation of wireless access point or wireless device|
US9880604B2|2011-04-20|2018-01-30|Microsoft Technology Licensing, Llc|Energy efficient location detection|
GB201107849D0|2011-05-11|2011-06-22|Cambridge Silicon Radio Ltd|Cooperative positioning|
US8981995B2|2011-06-03|2015-03-17|Microsoft Technology Licensing, Llc.|Low accuracy positional data by detecting improbable samples|
US9464903B2|2011-07-14|2016-10-11|Microsoft Technology Licensing, Llc|Crowd sourcing based on dead reckoning|
US9470529B2|2011-07-14|2016-10-18|Microsoft Technology Licensing, Llc|Activating and deactivating sensors for dead reckoning|
US9877299B2|2011-08-18|2018-01-23|Rivada Research, Llc|Method and system for performing trilateration for fixed infrastructure nodesbased on enhanced location based information|
US9485623B2|2011-08-18|2016-11-01|Rivada Research, Llc|Method and system for providing enhanced location based trilateration|
CN102333339B|2011-09-22|2015-07-08|华为技术有限公司|Calibration method and device of coverage database|
WO2013053388A1|2011-10-12|2013-04-18|Telefonaktiebolaget L M Ericsson |Mapping of position data for a network service in a cellular telecommunications network|
CN103096423A|2011-11-04|2013-05-08|宏碁股份有限公司|Method helping users to clear up wireless access point lists and mobile device|
US9429657B2|2011-12-14|2016-08-30|Microsoft Technology Licensing, Llc|Power efficient activation of a device movement sensor module|
US20130155102A1|2011-12-20|2013-06-20|Honeywell International Inc.|Systems and methods of accuracy mapping in a location tracking system|
US8874162B2|2011-12-23|2014-10-28|Microsoft Corporation|Mobile device safe driving|
US9710982B2|2011-12-23|2017-07-18|Microsoft Technology Licensing, Llc|Hub key service|
CN103188763B|2011-12-31|2016-07-06|联想有限公司|A kind of method of registering based on space and device, electronic equipment|
US8897803B2|2012-01-13|2014-11-25|Apple Inc.|Finding wireless network access points|
US8611247B2|2012-01-24|2013-12-17|Qualcomm Incorporated|Dynamic data retrieval in a WLAN positioning system|
CN103260237B|2012-02-20|2016-08-10|华为技术有限公司|A kind of network locating method and relevant device|
WO2013136129A1|2012-03-15|2013-09-19|Nokia Corporation|Encoding and decoding of data|
WO2013136124A1|2012-03-15|2013-09-19|Nokia Corporation|Supporting storage of data|
US8599812B2|2012-03-26|2013-12-03|Qualcomm Incorporated|Encoded wireless data delivery in a WLAN positioning system|
JP5915382B2|2012-05-29|2016-05-11|株式会社リコー|Management server and location information setting method|
CN103457876B|2012-05-30|2016-09-21|方正宽带网络服务有限公司|A kind of method and system determining nearest access network resource|
US10042035B2|2012-06-08|2018-08-07|Apple, Inc.|System and method for tile-based reduction of access point location information|
WO2013191609A1|2012-06-19|2013-12-27|Telefonaktiebolaget Lm Ericsson|Method and arrangement for d2d discovery|
KR20140005451A|2012-07-04|2014-01-15|한국전자통신연구원|Method and apparatus for estimating position of terminal using generation of virtual infrastructure|
US9442181B2|2012-07-18|2016-09-13|Microsoft Technology Licensing, Llc|Prediction for power conservation in a mobile device|
US8744484B2|2012-07-24|2014-06-03|Qualcomm Incorporated|Wireless network coverage estimation using down-sampled crowd-sourced data|
US8995255B2|2012-08-03|2015-03-31|Intel Corporation|Coverage adjustment in E-UTRA networks|
EP2883370B1|2012-08-09|2018-03-21|Sony Interactive Entertainment Inc.|Information processing terminal, information processing method, program, and information storage medium|
US8805407B2|2012-08-31|2014-08-12|The Nielsen Company , Llc.|Methods and apparatus to scan a wireless communication spectrum|
EP2896263B1|2012-09-17|2018-04-04|Telefonaktiebolaget LM Ericsson |Method and arrangement for handling d2d communication|
US9860929B2|2012-09-18|2018-01-02|Telefonaktiebolaget L M Ericsson |User equipment, a network node, and methods for device discovery in device to-devicecommunications in a wireless telecommunications network|
US8886161B2|2012-10-05|2014-11-11|The Nielsen Company , Llc|Methods and apparatus to discover spectrum usage of mobile carriers|
US8934369B2|2012-10-05|2015-01-13|Cisco Technology, Inc.|Direction aware neighbor list infrastructure assisted roaming|
US20140155084A1|2012-12-03|2014-06-05|Qualcomm Incorporated|Multi-mode wireless position association|
US9357521B2|2013-02-27|2016-05-31|Marvell World Trade Ltd.|Determining an estimated location of a base station|
US9820231B2|2013-06-14|2017-11-14|Microsoft Technology Licensing, Llc|Coalescing geo-fence events|
US8918109B1|2013-07-02|2014-12-23|Sprint Spectrum L.P.|Using a coverage area identifier to facilitate network reporting|
US9107045B2|2013-07-09|2015-08-11|Google Inc.|Crowdsourcing method to detect broken WiFi indoor locationing model|
US9237418B2|2013-07-26|2016-01-12|Marvell World Trade Ltd.|Positioning database management applied to server-based positioning system|
US9100926B2|2013-08-01|2015-08-04|The Nielsen Company , Llc|Methods and apparatus to determine a base station location|
US9398465B2|2013-08-08|2016-07-19|Intel IP Corporation|User equipment distribution information collection|
US9313767B2|2013-09-19|2016-04-12|Qualcomm Incorporated|Using broadcast position and transmit power from access points to form assistance data|
TWI511603B|2013-10-31|2015-12-01|Acer Inc|Electronic device and wireless communication method|
US9628359B1|2013-12-23|2017-04-18|Google Inc.|Network selection using current and historical measurements|
US10762538B2|2014-04-24|2020-09-01|DataSpark, PTE. LTD.|Knowledge model for personalization and location services|
WO2015185919A1|2014-06-02|2015-12-10|Geospock Limited|System for providing location-based social networking services to users of mobile devices|
WO2016008540A1|2014-07-18|2016-01-21|Here Global B.V.|Obtaining radiomaps|
US9794511B1|2014-08-06|2017-10-17|Amazon Technologies, Inc.|Automatically staged video conversations|
US9911398B1|2014-08-06|2018-03-06|Amazon Technologies, Inc.|Variable density content display|
JP6142898B2|2014-09-30|2017-06-07|ダイキン工業株式会社|Positioning system|
US9730013B2|2014-10-31|2017-08-08|Hsiao-Tse Chang|Method, recording medium and electronic device of 3D geolocation|
EP3026454A1|2014-11-27|2016-06-01|Deutsche Telekom AG|Method and wireless communication system for automatically determining the position of a stationary wireless access point for mobile end devices|
WO2016086994A1|2014-12-04|2016-06-09|Here Global B.V.|Supporting positioning quality assurance|
US10175336B2|2014-12-04|2019-01-08|Here Global B.V.|Supporting radio model quality assurance|
CN107209247B|2014-12-04|2021-06-18|赫尔环球有限公司|Supporting collaborative collection of data|
KR102280542B1|2015-01-13|2021-07-22|삼성전자 주식회사|Electronic device, Wireless relay device, and Method for providing location information of the wireless relay device|
US9462427B2|2015-01-14|2016-10-04|Kodiak Networks, Inc.|System and method for elastic scaling using a container-based platform|
EP3755055A1|2015-03-20|2020-12-23|Telefonaktiebolaget LM Ericsson |Method and apparatus for facilitating network coexistence|
US9819905B1|2015-05-28|2017-11-14|Amazon Technologies, Inc.|Video communication sessions between whitelisted devices|
US9571979B2|2015-06-10|2017-02-14|The Nielsen Company , Llc|Methods and apparatus for cell tower location estimation using multiple types of data sources|
US10341807B2|2015-08-07|2019-07-02|Telefonaktiebolaget Lm Ericsson |Differentiated positioning|
US9973939B2|2015-09-25|2018-05-15|Vivint, Inc.|UAV network design|
US10063419B2|2015-10-31|2018-08-28|Mcafee, Llc|Establishing nodes for global routing manager|
US10154378B2|2015-11-23|2018-12-11|Electronics And Telecommunications Research Institute|System and method for tracking location of worker|
US10841852B2|2015-12-09|2020-11-17|DataSpark, PTE. LTD.|Transportation network monitoring using cellular radio metadata|
US11249167B2|2016-01-21|2022-02-15|Rx Networks Inc.|Location determination using crowd sourced information|
KR20170092245A|2016-02-03|2017-08-11|삼성전자주식회사|Method and electronic device for estimating position|
US10176340B2|2016-03-13|2019-01-08|DataSpark, PTE. LTD.|Abstracted graphs from social relationship graph|
US11157520B2|2016-03-28|2021-10-26|DataSpark, Pte Ltd.|Uniqueness level for anonymized datasets|
US20170328682A1|2016-05-11|2017-11-16|Rivada Research, Llc|Method and System for Using Enhanced Location-Based Information to Guide Munitions|
US9635510B1|2016-06-24|2017-04-25|Athentek Innovations, Inc.|Database for Wi-Fi position estimation|
DK3497403T3|2016-08-11|2021-10-04|Axon Vibe AG|GEOLOCATION OF PERSONS BASED ON A DERIVATIVE SOCIAL NETWORK|
US10298699B2|2016-09-08|2019-05-21|Microsoft Technology Licensing, Llc|Physical location determination of internal network components|
US10349375B2|2016-11-16|2019-07-09|At&T Intellectual Property I, L.P.|Location determination based on access point emulation|
JP6776848B2|2016-11-25|2020-10-28|富士通株式会社|Information processing system, information processing device and information processing method|
WO2018151672A1|2017-02-17|2018-08-23|Dataspark Pte. Ltd.|Trajectory analysis through fusion of multiple data sources|
WO2018150227A1|2017-02-17|2018-08-23|Dataspark Pte, Ltd|Mobility gene for trajectory data|
AU2017399008A1|2017-02-17|2019-09-05|Dataspark Pte, Ltd|Mobility gene for visit data|
US10834600B2|2017-05-22|2020-11-10|Apple Inc.|Managing moving wireless access points in wireless network positioning system|
US9974043B1|2017-05-31|2018-05-15|Aruba Networks, Inc.|Assigning a subset of access points in a wireless network to a high priority|
US10545231B2|2017-06-02|2020-01-28|Apple Inc.|Compressing radio maps using different compression models|
US10151824B1|2017-06-02|2018-12-11|Apple Inc.|Compressing radio maps|
CN108169709B|2018-03-01|2021-11-16|西京学院|Indoor three-dimensional positioning method based on distributed antenna|
KR20200007601A|2018-07-13|2020-01-22|삼성전자주식회사|Method for tracking position of access point and electronic device thereof|
KR20200007608A|2018-07-13|2020-01-22|삼성전자주식회사|Electronic device, server device and method for determining location of electronic device|
US11191054B2|2018-11-02|2021-11-30|Qualcomm Incorporated|Method and apparatus for estimating a position of a mobile device using bundled positioning reference signals|
US10848934B1|2019-09-13|2020-11-24|Troverlo, Llc|Passive sensor tracking with existing infrastructure|
US10728709B1|2019-09-13|2020-07-28|Troverlo, Llc|Passive asset tracking with existing infrastructure|
US10848935B1|2019-09-13|2020-11-24|Troverlo, Llc|Passive asset tracking with existing infrastructure|
WO2021146936A1|2020-01-21|2021-07-29|LenovoLimited|Method and apparatus for wireless communication|
KR102259156B1|2020-09-28|2021-06-01|박나은|Authentication system and method for network environment|
法律状态:
2019-01-08| B06F| Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]|
2020-02-04| B06U| Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]|
2020-02-27| B15K| Others concerning applications: alteration of classification|Free format text: A CLASSIFICACAO ANTERIOR ERA: H04W 64/00 Ipc: G01S 5/02 (2010.01), H04W 64/00 (2009.01) |
2021-02-09| B09A| Decision: intention to grant [chapter 9.1 patent gazette]|
2021-04-13| B16A| Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]|Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 13/04/2021, OBSERVADAS AS CONDICOES LEGAIS. |
优先权:
申请号 | 申请日 | 专利标题
US12/688,806|US8433334B2|2010-01-15|2010-01-15|Managing a location database for network-based positioning system|
US12/688,806|2010-01-15|
PCT/US2010/046707|WO2011087529A1|2010-01-15|2010-08-25|Managing a location database for network-based positioning system|
[返回顶部]